home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 30
/
Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso
/
Aminet
/
misc
/
sci
/
WorldMap_bin.lha
/
WorldMap
/
Src
/
WMapIni.c
< prev
next >
Wrap
C/C++ Source or Header
|
1998-11-09
|
4KB
|
107 lines
#include <exec/types.h>
#include <pragma/all_lib.h>
#include <exec/memory.h>
#include <string.h>
#include <WMap.h>
extern APTR TextMemA[2];
extern char *CountryText[MAXCOUNTRY];
extern char *PText[MAXOTHER];
extern struct WPreferences WPrefs;
//0-Neutral/Blockfrei 1-NATO 2-WarschauerVertrag 3-ArabischeLiga 4-Chinesische Allianz
//5-Kommunist.Block
BYTE BlockID[MAXCOUNTRY]={
1, 1, 1, 1, 0, 1, 1, 1, 1, 1,
//Portugal Spanien Frankreich Großbritannien Irland Dänemark Belgien Luxemburg Niederlande BRD
2, 0, 0, 1, 2, 2, 2, 2, 2, 1,
//DDR Schweiz Österreich Italien CSSR Polen Ungarn Jugoslawien Albanien Griechenland
2, 2, 2, 1, 3, 0, 3, 3, 3, 3,
//Bulgarien Rumänien UdSSR Türkei Libanon Israel Syrien Jordanien Irak Iran
3, 3, 3, 3, 3, 5, 0, 0, 0, 0,
//Kuweit Saudi-Arabien Bahrein VAEmirate Oman VDRJemen Jemen Pakistan Afghanistan Indien
0, 0, 0, 0, 0, 5, 5, 5, 4, 0,
//Nepal Bangladesh Burma SriLanka Thailand Kampuchea Laos Vietnam China Taiwan
5, 0, 0, 1, 1, 1, 5, 0, 0, 0,
//KDVR Südkorea Japan Finnland Schweden Norwegen Mongolische Malaysia Indonesien Philippinen
0, 0, 0, 1, 3, 0, 3, 0, 1, 0,
//Fidschi Australien Neuseeland Island Ägypten Libyen Tunesien Kanada USA Mexico
5, 0, 0, 0, 0, 0, 5, 0, 0, 0,
//Kuba Haiti DominikRepublik Guatemala Belize Honduras Nikaragua ElSalvador Kostarika Panama
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
//Kolumbien Ekuador Peru Chile Argentinien Uruguay Paraguay Bolivien Venezuela Guyana
0, 0, 0, 0, 0, 0, 5, 0, 0, 0,
//Suriname Brasilien Südafrika Lesotho Swasiland Madagaskar Mocambique Namibia Botswana Simbabwe
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
//Malawi Sambia Angola Algerien Marokko Westsahara Mauretanien Senegal Gambia Guinea-Bissau
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
//Guinea Sierra Leone Liberia Elfenbeinküste Mali Obervolta Ghana Togo Benin Nigeria
0, 0, 3, 5, 0, 0, 0, 0, 0, 0,
//Niger Tschad Sudan Äthiopien Djibouti Somalia Kenia Tansania Uganda Rwanda
0, 0, 0, 0, 0, 0, 0,
//Burundi Zaire Kamerun Äquatorial-Guinea Gabun Kongo ZAR
0};
void SETSTRPARA(BYTE TextNum, LONG TextL, WORD MaxStrNum)
{
LONG AddrB;
UBYTE *DataB;
WORD StrCnt=0;
AddrB=(LONG)TextMemA[TextNum];
if (TextNum==0) CountryText[0]=(UBYTE*)AddrB
else if (TextNum==1) PText[0]=(UBYTE*)AddrB;
StrCnt=1;
do
{
DataB=(UBYTE*)AddrB; AddrB=AddrB+1;
if (*DataB==10)
{
*DataB=0;
if (TextNum==0) CountryText[StrCnt]=(UBYTE*)AddrB
else if (TextNum==1) PText[StrCnt]=(UBYTE*)AddrB;
StrCnt++;
}
}
while ((AddrB<(LONG)TextMemA[TextNum]+TextL) && (StrCnt<MaxStrNum));
}
BOOL INITLANGS(BYTE LangID)
{
BPTR FHandle=NULL;
char PathFR[100];
LONG l;
strcpy(PathFR,WPrefs.Lang);
if (LangID==0) strncat(PathFR,"/country.txt",13)
else if (LangID==1) strncat(PathFR,"/other.txt",11);
FHandle=Open(PathFR,MODE_OLDFILE);
if (FHandle)
{
Seek(FHandle,0,OFFSET_END);
l=Seek(FHandle,0,OFFSET_BEGINNING);
if (!(TextMemA[LangID]=AllocVec(l,MEMF_FAST)))
{
Close(FHandle);
return FALSE;
}
Read(FHandle,TextMemA[LangID],l);
Close(FHandle);
if (LangID==0) SETSTRPARA(0,l,MAXCOUNTRY)
else if (LangID==1) SETSTRPARA(1,l,MAXOTHER);
return TRUE;
}
else return FALSE;
}